// const axios = require("axios");
// const cheerio = require("cheerio");
// const fs = require("fs");

// // 2020年11月中华人民共和国县以上行政区划代码
// const URL = "http://www.mca.gov.cn/article/sj/xzqh/2020/2020/202101041104.html";

// (async function () {
//   function getSpaceLength(tag) {
//     if (!tag) return false;
//     if (tag.nodeType) tag = $(tag);
//     return tag.text().trim().match(/\s+/)[0].length;
//   }

//   const data = (await axios.get(URL)).data; //异步获得整个页面数据
//   const $ = cheerio.load(data);
//   const cityArr = $(".xl7032423").text()
//   const tagArr = $(".xl7132423").text();
//   console.log(cityArr, tagArr);
//   let dataObj = {},
//     lengthArr = []; //总数据Object和区分数据的长度数组

//   tagArr.slice(0, 3).forEach(tag => { //总共只有省市区三个关键长度所以，取前三条数组就好了
//       let tempLen = getSpaceLength(tag);
//       if (lengthArr.indexOf(tempLen) < 0) lengthArr.push(tempLen);
//   })

//   const [provinceKey, cityKey, areaKey] = lengthArr;
//   function getObj(tag, key, type) {
//       if (!tag) return false;
//       let tempArr = tag.text().trim().match(/\S+/g),
//           tempCode = tempArr[0],
//           tempName = tempArr[1];

//       return {
//           code: tempCode,
//           name: tempName,
//           key: tempCode.slice(key, key + 2),
//           type: type
//       }
//   }
//   let tempProvinceObj, tempCityObj, tempAreaObj, tempObj, key;//省，市，区县，临时obj, 关键Key
//   tagArr.forEach(item => {
//       switch (getSpaceLength(item)) {
//           case provinceKey:
//               key = 0;
//               tempObj = getObj(item, key, 1);
//               dataObj[tempObj.key] = tempProvinceObj = tempObj;
//               break;
//           case cityKey:
//               key = 2;
//               tempObj = getObj(item, key, 2);
//               tempProvinceObj[tempObj.key] = tempCityObj = tempObj;
//               break;
//           case areaKey:
//               key = 4;
//               tempObj = getObj(item, key, 3);
//               tempCityObj[tempObj.key] = tempAreaObj = tempObj;
//               break;
//           default:
//               break;
//       }
//   })
//   fs.writeFile('province.json', JSON.stringify(dataObj), 'utf8', err => {
//       if (err) throw err;
//       console.log('It\'s saved!');
//   });
// })();
